package adapter.obj;

/**
 * 适配器类。
 * 适配器就是一个工具
 * 祛除 extends TfCardImpl
 *
 */
public class SdAdapter implements ISdCard {

    // 采取内聚合的方式，结合代理模式的思想
    // 如果有其他的卡需要使用这一个适配器类，则需要保证其他的卡实现 ITfCard 接口，重写其中的方法即可！
    private ITfCard tfCard;

    public SdAdapter(ITfCard tfCard) {
        this.tfCard = tfCard;
    }

    @Override
    public String readSD() {
        System.out.println("adapter read tf card");
        // 调用 TFCard 子实现类的方法
        return tfCard.readTf();
    }

    @Override
    public void writeSD(String msg) {
        System.out.println("adapter write tf card");
        // 调用 TFCard 子实现类的方法
        tfCard.writeTf(msg);
    }
}
